#include "compile_run.hpp"
#include "../comm/httplib.h"
using namespace ns_compile_run;
using namespace httplib;


/*****************************************************
 * 1.编译服务随时可能被多个人请求，必须保证传递上来的code，
 * 形成源文件名称的时候要具有唯一性，否则多个用户之间会相互影响；
 ******************************************************/
int main(int argc,char *argv[])
{
    if(argc!=2)
    {
        std::cerr<<"缺少命令行参数,启动执行有误!"<<std::endl;
        return 1;
    }
    Server svr;
    svr.Post("/compile_and_run",[](const Request &req,Response &resp){
        std::string in_json=req.body;
        std::string out_json;
        if(!in_json.empty()){
            compile_run::start(in_json,&out_json);
            resp.set_content(out_json,"application/json;charset=utf-8");
        }
    });
    /*0.0.0.0 8081/8082/8083 */
    svr.listen("0.0.0.0",atoi(argv[1]));

    return 0;
}

